package com.smart.village.big.screen.mapper;
import com.alibaba.fastjson.JSONObject;
import org.apache.ibatis.annotations.Mapper;

import java.math.BigDecimal;
import java.util.List;

@Mapper
public interface AdminChartsMapper {

    List<JSONObject> marketDynamic();
    List<JSONObject> marketDynamicWeek();

    List<JSONObject> bookingTrend();
    List<JSONObject> bookingTrendWeek();

    List<JSONObject> roomTypePreference();

    List<JSONObject> checkInDurationDistribution();

    List<JSONObject> popularCheckInDate();

    List<JSONObject> totalCheckInStatics( int cnt);

    List<JSONObject> checkInPercentStatics( int cnt);

    List<JSONObject> checkInPlanPriceStatics( int cnt);

    List<JSONObject> staticBusinessScoreLineDataDay();
    List<JSONObject> staticBusinessScoreLineDataWeek();
    List<JSONObject> staticBusinessScoreLineDataMonth();
    List<JSONObject> staticBusinessScoreList(String type, String search);
    List<JSONObject> staticBusinessScoreDetail(String staticBusinessScoreSerialNumber);
    List<JSONObject> staticBusinessScoreLastIntervalDayTrend(String merchantMappingBluePlateSerialNumber,int interval);

    List<JSONObject> hotTopic();

    List<JSONObject> satisfactionAnalysis();

    List<JSONObject> messageTrend(String type);

    int getCurrentMonthMessageTotal();

    int getLastMonthMessageTotal();

    BigDecimal getCurrentMonthMessagePercent();

    BigDecimal getLastMonthMessagePercent();

    BigDecimal getCurrentMonthMessageAvgSatisfaction();

    BigDecimal getLastMonthMessageAvgSatisfaction();

    int getCurrentMonthMessageReply();

    int getLastMonthMessageReply();

    int getCurrentDaySpotPersonCnt();

    int getCurrentDaySpotTicketCnt();

    int getCurrentDayBookingCnt();

    int getCurrentDayCheckInCnt();

    List<JSONObject> getSpotRealTimeTrafficTrend();

    List<JSONObject> getDailyBookingVsActualVisitsComparison();

    List<JSONObject> getWeeklyBookingVsActualVisitsComparison();

    List<JSONObject> getPassengerFlowDistributionAnalysis();
}
